@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Cherry+Bomb+One&family=Darumadrop+One&display=swap");
.a-name > div {
  animation: change 3s;
}

.a-delay > div {
  width: 100px;
  height: 100px;
  background: #000;
  animation-name: move;
  animation-duration: 2s;
}
.a-delay > div:nth-child(2) {
  animation-delay: 1s;
}

.a-delay-use {
  width: 100px;
  height: 100px;
  background-color: red;
}
.a-delay-use > div {
  width: 20px;
  height: 20px;
  border-radius: 100%;
  color: white;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.a-delay-use > div:nth-child(1) {
  transform-origin: 50px 50px;
  animation: rotate 3s infinite linear;
}
.a-delay-use > div:nth-child(2) {
  transform-origin: 40px 40px;
  animation: rotate 3s infinite -1s linear;
}
.a-delay-use > div:nth-child(3) {
  transform-origin: 30px 30px;
  animation: rotate 3s infinite -2s linear;
}

.a-delay-two {
  width: 200px;
  margin: auto;
  display: flex;
  flex-wrap: nowrap;
  gap: 5px;
  list-style-type: none;
}
.a-delay-two > li {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #000;
  animation: move2 3s infinite 1s linear;
}
.a-delay-two > li:nth-child(1) {
  animation-duration: 3.569s;
  animation-delay: 1.712s;
}
.a-delay-two > li:nth-child(2) {
  animation-duration: 2.125s;
  animation-delay: 1.614s;
}
.a-delay-two > li:nth-child(3) {
  animation-duration: 3.984s;
  animation-delay: 1.168s;
}
.a-delay-two > li:nth-child(4) {
  animation-duration: 3.125s;
  animation-delay: 1.821s;
}
.a-delay-two > li:nth-child(5) {
  animation-duration: 2.222s;
  animation-delay: 1.316s;
}
.a-delay-two > li:nth-child(6) {
  animation-duration: 3.185s;
  animation-delay: 1.741s;
}
.a-delay-two > li:nth-child(7) {
  animation-duration: 2.156s;
  animation-delay: 1.355s;
}
.a-delay-two > li:nth-child(8) {
  animation-duration: 2.971s;
  animation-delay: 1.191s;
}
.a-delay-two > li:nth-child(9) {
  animation-duration: 3.17s;
  animation-delay: 1.256s;
}
.a-delay-two > li:nth-child(10) {
  animation-duration: 2.938s;
  animation-delay: 1.272s;
}

.a-timing-function .box {
  width: 256px;
  height: 256px;
  background: url("https://github.com/iamalperen/playground/blob/main/SpriteSheetAnimation/sprite.png?raw=true");
  animation: sprite 0.2s steps(6, end) infinite;
}
@keyframes sprite {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1536px 0;
  }
}

.a-play-state .stop:hover ~ .animation {
  animation-play-state: paused;
}
.a-play-state .animation {
  width: 100px;
  height: 100px;
  background: deeppink;
  animation: move 2s linear infinite alternate;
}
.a-play-state .animation:active {
  background-color: red;
}

.a-combine > div {
  width: 100px;
  height: 100px;
  background: #000;
  animation: combine 2s;
}
.a-combine > div {
  animation: falldown 2s, fadeIn 2s;
}
@keyframes falldown {
  100% {
    transform: translate(0, 150px);
  }
}
@keyframes fadeIn {
  100% {
    opacity: 0;
  }
}

@keyframes change {
  0% {
    color: #f00;
  }
  100% {
    color: #000;
  }
}
@keyframes move {
  0% {
    transform: translate(0);
  }
  100% {
    transform: translate(200px);
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes move2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(0, -100px);
  }
}
.arrow-button {
  position: relative;
  width: 180px;
  height: 64px;
  background: #f49714;
}
.arrow-button.filter-drop-shadow {
  filter: drop-shadow(0px 0px 2px #000);
}
.arrow-button.filter-outline {
  filter: url(#outline);
}
.arrow-button::after {
  content: "";
  position: absolute;
  width: 32px;
  height: 64px;
  top: 0;
  right: -32px;
  background: linear-gradient(-45deg, transparent 0, transparent 22px, #f49714 22px, #f49714 100%), linear-gradient(-135deg, transparent 0, transparent 22px, #f49714 22px, #f49714 100%);
  background-size: 32px 32px;
  background-repeat: no-repeat;
  background-position: 0 bottom, 0 top;
}

.four-g-container {
  --pic: url(../../assets/08-.jpg);
  --x: 0;
  --y: 0;
  background-color: #000;
  padding: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.four-g-container .g-test {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 350px;
  height: 500px;
  border-radius: 30px;
}
.four-g-container .g-test .g-mask {
  position: absolute;
  inset: 0px;
  border-radius: 30px;
  background-image: conic-gradient(#03a9f4, #e91e63, #9c27b0, #ff5722, #03a9f4);
  -webkit-mask: radial-gradient(circle at var(--x) var(--y), #000, #000, transparent, transparent, transparent);
          mask: radial-gradient(circle at var(--x) var(--y), #000, #000, transparent, transparent, transparent);
}
.four-g-container .test2 {
  width: 350px;
  height: 500px;
  border-radius: 30px;
  background-image: conic-gradient(#03a9f4, #e91e63, #9c27b0, #ff5722, #03a9f4);
}
.four-g-container .test3 {
  display: flex;
  gap: 40px;
}
.four-g-container .test3 > div {
  position: relative;
  width: 200px;
  height: 300px;
  border-radius: 10px;
  border: 1px solid #fff;
  background-image: conic-gradient(#03a9f4, #e91e63, #9c27b0, #ff5722, #03a9f4);
}
.four-g-container .test3 > div > div {
  position: absolute;
  overflow: hidden;
  border: 1px solid #fff;
  border-radius: 10px;
  inset: 10px;
}
.four-g-container .test3 > div > div::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 10px;
  background: #fff;
}
.four-g-container .test3 > div:last-child > div::before {
  filter: blur(20px);
}
.four-g-container #g-container {
  position: relative;
  width: 352px;
  height: 502px;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.four-g-container #g-mask {
  visibility: hidden;
  position: absolute;
  inset: 0px;
  border-radius: 30px;
  background-image: conic-gradient(#03a9f4, #e91e63, #9c27b0, #ff5722, #03a9f4);
  -webkit-mask: radial-gradient(circle at var(--x) var(--y), #000, #000, transparent, transparent, transparent);
          mask: radial-gradient(circle at var(--x) var(--y), #000, #000, transparent, transparent, transparent);
}
.four-g-container .g-img {
  position: relative;
  margin: auto;
  width: 350px;
  height: 500px;
  border-radius: 30px;
  overflow: hidden;
}
.four-g-container .g-img::before, .four-g-container .g-img::after {
  content: "";
  position: absolute;
  background: var(--pic);
  background-size: cover;
  background-position: center;
  border-radius: 30px;
}
.four-g-container .g-img::before {
  inset: 0;
  filter: blur(20px);
}
.four-g-container .g-img::after {
  inset: 50px;
}
.four-g-container .test4 {
  width: 350px;
  height: 500px;
  background-image: radial-gradient(circle at var(--x) var(--y), red, red, transparent, transparent, transparent);
}
.four-g-container #test5,
.four-g-container #test6 {
  width: 100px;
  height: 100px;
  background-color: red;
}
.four-g-container #test6 {
  background-color: green;
}

.five-g-container > div {
  display: flex;
}
.five-g-container .text-border {
  background: #e98b00;
  display: block;
}
.five-g-container .text-border > div {
  position: relative;
  height: 170px;
  font-size: 120px;
  font-weight: bold;
  text-align: center;
}
.five-g-container .text-border > div::before, .five-g-container .text-border > div::after {
  content: attr(data-text);
  position: absolute;
  inset: 0;
}
.five-g-container .text-border > div::before {
  color: transparent;
  background-image: linear-gradient(0deg, #da00ff, #2a79b7, #7e3eff);
  -webkit-background-clip: text;
          background-clip: text;
}
.five-g-container .text-border > div::after {
  filter: url(#outlinetext);
}
.five-g-container .text-border div:nth-child(2) {
  font-family: "Cherry Bomb One", cursive;
  font-size: 90px;
}
.five-g-container .text-border div:nth-child(3) {
  height: 200px;
  font-family: "Darumadrop One", cursive;
  font-size: 150px;
}
.five-g-container .text-stroke-wrapper {
  display: block;
  position: relative;
  font-size: 80px;
  letter-spacing: 12px;
  --stroke-width: 12px;
  --background-gradient: linear-gradient(red 0%, green 100%);
  --text-gradient: linear-gradient(white 0%, cyan 100%);
}
.five-g-container .text-stroke-wrapper .text {
  position: relative;
}
.five-g-container .text-stroke-wrapper .text::before, .five-g-container .text-stroke-wrapper .text::after {
  content: attr(data-text);
  display: block;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.five-g-container .text-stroke-wrapper .text::before {
  position: absolute;
  inset: 0;
  background-image: var(--background-gradient);
  -webkit-text-stroke: var(--stroke-width);
}
.five-g-container .text-stroke-wrapper .text::after {
  position: relative;
  z-index: 1;
  background-image: var(--text-gradient);
}
.five-g-container .test1 {
  position: relative;
  width: 300px;
  height: 150px;
  font-size: 100px;
  font-weight: bold;
  text-align: center;
}
.five-g-container .test1::before, .five-g-container .test1::after {
  content: attr(data-text);
  position: absolute;
  inset: 0;
  color: #000;
}
.five-g-container .test1::before {
  transform: scale(1.2);
  background-image: linear-gradient(cyan, #fc0);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.five-g-container .test2 {
  justify-content: space-between;
  flex-direction: column;
}
.five-g-container .test2 p {
  margin: 0;
  font-size: 48px;
  letter-spacing: 6px;
}
.five-g-container .test2 p:nth-child(1) {
  -webkit-text-stroke: 3px #000;
}
.five-g-container .test2 p:nth-child(2) {
  -webkit-text-stroke: 3px red;
}
.five-g-container .test2 p:nth-child(3) {
  font-weight: bold;
}
.five-g-container .test2.test21 p {
  -webkit-text-stroke: 1px #000;
  text-shadow: 0 0 2px red, 0 0 2px red, 0 0 2px red, 0 0 2px red, 0 0 2px red, 0 0 2px red, 0 0 2px red, 0 0 2px red, 0 0 2px red, 0 0 2px red;
}
.five-g-container .test2.test22 p {
  -webkit-text-stroke: 1px #000;
  filter: drop-shadow(0 0 0.2px red) drop-shadow(0 0 0.2px red) drop-shadow(0 0 0.2px red) drop-shadow(0 0 0.2px red) drop-shadow(0 0 0.2px red) drop-shadow(0 0 0.2px red) drop-shadow(0 0 0.25px blue) drop-shadow(0 0 0.25px blue) drop-shadow(0 0 0.25px blue) drop-shadow(0 0 0.25px blue) drop-shadow(0 0 0.25px blue) drop-shadow(0 0 0.25px blue);
}
.five-g-container .test2.test23 p {
  font-size: 64px;
  letter-spacing: 6px;
  font-weight: bold;
  -webkit-text-stroke: unset;
  filter: url(#dilate);
}
.five-g-container .test3 {
  flex-wrap: wrap;
  gap: 70px;
}
.five-g-container .test3 .g-text {
  display: flex;
  gap: 70px;
}
.five-g-container .test3 .g-text p {
  font-size: 64px;
}
.five-g-container .test3 .g-text .dilate {
  filter: url(#dilateesay);
}
.five-g-container .test3 .g-text .erode {
  filter: url(#erode);
}

.six-g-container .test1 {
  display: flex;
}
.six-g-container .test1 p {
  writing-mode: vertical-lr;
  width: 12px;
  font-size: 10px;
  word-break: break-all;
}
.six-g-container .test21 {
  display: flex;
  padding-inline: 30px;
  background: #000;
  gap: 20px;
}
.six-g-container .test21 p {
  width: 12px;
  font-size: 14px;
  word-break: break-all;
}
.six-g-container .test21 p::before {
  display: inline-block;
  width: 100%;
  color: #fff;
  animation: typing2 4s steps(20, start) infinite;
  overflow: hidden;
}
.six-g-container .test21 p:nth-child(1)::before {
  content: "ㄩナナㄥㄎッちヘ☻ㄖㄐぇニㄡㄠㄙっヲくㄎ";
}
.six-g-container .test21 p:nth-child(2)::before {
  content: "♥タㄟょヵㄝテヌけ▤ㄍヲㄑヶゐンっㄉㄕ►";
}
.six-g-container .test21 p:nth-child(3)::before {
  content: "てマこほすむュノけヶセへはス☻ッヒㄇㄐㄛ";
}
.six-g-container .test21 p:nth-child(4)::before {
  animation: none;
  content: "ㄙㄑてぉけこニㄖほケㄜェヲゑへヒゐコハノ";
}
.six-g-container .test22 {
  display: flex;
  padding-inline: 30px;
  background: #000;
  gap: 20px;
  position: relative;
}
.six-g-container .test22 p {
  width: 14px;
  font-size: 14px;
  word-break: break-all;
  position: relative;
}
.six-g-container .test22 p::before {
  display: inline-block;
  overflow: hidden;
  color: rgb(179, 255, 199);
  text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 5px currentColor, 0 0 10px currentColor;
  position: absolute;
  z-index: 1;
  inset: 0;
}
.six-g-container .test22 p::after {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: inline-block;
  content: "";
}
.six-g-container .test22 p:nth-child(1)::before {
  content: "ㄨヵㄊス▨をマㄘㄇゥㄑㄔひツこミィぉゥか";
  animation: typing-1 3.6s steps(20, start) -0.3s infinite;
}
.six-g-container .test22 p:nth-child(1)::after {
  content: "";
  background: linear-gradient(rgba(0, 0, 0, 0.64), rgba(0, 0, 0, 0.64), rgba(0, 0, 0, 0.64), transparent 75%, transparent);
  background-size: 100% 220%;
  background-repeat: no-repeat;
  animation: mask 3.6s infinite -0.1s linear;
}
@keyframes typing-1 {
  0% {
    height: 0%;
    content: "ㄣゐㄢェまヰたしュㄥャヰ▨ねヶメヰㄕすコ";
  }
  30% {
    height: 100%;
  }
  100% {
    height: 100%;
  }
}
.six-g-container .test22 p:nth-child(2)::before {
  content: "ぃㄘ▦ㄓへ►ノむ▧こャㄍㄔㄓマㄎソㄩつホ";
  animation: typing-2 3.5s steps(20, start) -0.1s infinite;
}
.six-g-container .test22 p:nth-child(2)::after {
  content: "";
  background: linear-gradient(rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.82), transparent 75%, transparent);
  background-size: 100% 220%;
  background-repeat: no-repeat;
  animation: mask 3.5s infinite 0.1s linear;
}
@keyframes typing-2 {
  0% {
    height: 0%;
    content: "ㄏなんぃㄞㄎカヲニㄐンㄞすㄕひたㄝㄟカシ";
  }
  30% {
    height: 100%;
  }
  100% {
    height: 100%;
  }
}
.six-g-container .test22 p:nth-child(3)::before {
  content: "ㄝ▨ムムぇゥㄕネきをぬァㄉぅㄍㄇゅめネヱ";
  animation: typing-3 3.7s steps(20, start) -0.1s infinite;
}
.six-g-container .test22 p:nth-child(3)::after {
  content: "";
  background: linear-gradient(rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.65), transparent 75%, transparent);
  background-size: 100% 220%;
  background-repeat: no-repeat;
  animation: mask 3.7s infinite 0.1s linear;
}
@keyframes typing-3 {
  0% {
    height: 0%;
    content: "ㄙシㄔょツかほフねコさそなっすㄛせㄧをけ";
  }
  30% {
    height: 100%;
  }
  100% {
    height: 100%;
  }
}
.six-g-container .test22 p:nth-child(4)::before {
  color: #fff;
  animation: none;
  content: "ををㄓソっヌㄩミそㄚョㄣホㄎょヶと▤ヘㄎ";
  text-shadow: none;
}
.six-g-container .test22 p:nth-child(5)::after {
  display: inline-block;
  width: 100%;
  height: 100%;
  content: "";
  background: linear-gradient(rgba(0, 0, 0, 0.9), transparent 75%, transparent);
  background-size: 100% 220%;
  background-repeat: no-repeat;
}
@keyframes mask {
  0% {
    background-position: 0 220%;
  }
  30% {
    background-position: 0 0%;
  }
  100% {
    background-position: 0 0%;
  }
}
@keyframes typing-4 {
  0% {
    height: 0%;
  }
  50% {
    height: 100%;
  }
  100% {
    height: 100%;
  }
}
.six-g-container .test3 h1 {
  font-family: monospace;
  width: 26ch;
  white-space: nowrap;
  overflow: hidden;
  animation: typing 3s steps(26, start), cursor-blink 0.3s step-end infinite alternate;
  border-right: 0.1em solid;
}
.six-g-container .test3 p,
.six-g-container .test3 a {
  margin: 0;
  width: 500px;
  background: linear-gradient(90deg, blue, green);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  transition: all 1s linear;
}
.six-g-container .test3 p:hover,
.six-g-container .test3 a:hover {
  background-size: 0 100%;
}
.six-g-container .test3 #content2,
.six-g-container .test3 #content {
  display: inline;
  padding-right: 4px;
  background: linear-gradient(90deg, transparent, transparent calc(100% - 2px), var(--pointerColor) calc(100% - 2px), var(--pointerColor));
}
.six-g-container .test3 #content {
  animation: colorChange 0.6s linear infinite;
}
.six-g-container .test3 #content2 {
  animation: colorChange2 0.6s linear infinite;
}
.six-g-container .test4 p {
  width: 300px;
  height: 200px;
  overflow: hidden scroll;
  scrollbar-color: #fff #000;
  scrollbar-width: thin;
}
.six-g-container .test4 p:hover {
  scrollbar-color: #000 transparent;
}

@keyframes typing {
  0% {
    width: 0;
  }
  100% {
    width: 26ch;
  }
}
@keyframes typing2 {
  0% {
    height: 0;
  }
  100% {
    height: 100%;
  }
}
@keyframes cursor-blink {
  50% {
    border-color: transparent;
  }
}
@keyframes colorChange {
  0%, 50% {
    --pointerColor: #000;
  }
  50%, 100% {
    --pointerColor: transparent;
  }
}
@keyframes colorChange2 {
  0% {
    --pointerColor: #000;
  }
  100% {
    --pointerColor: transparent;
  }
}
.seven-container {
  height: 100vh;
  position: relative;
  background-color: #291f34;
  cursor: none;
}
.seven-container .test1 {
  display: flex;
  justify-content: center;
}
.seven-container .test1 div {
  width: 150px;
  height: 150px;
  position: absolute;
  top: 35px;
  mix-blend-mode: screen;
  border-radius: 50%;
  transform-origin: 47% 47%;
}
.seven-container .test1 div:nth-child(1) {
  background-color: #0801fb;
  animation: turn 1s linear 0.4s infinite;
}
.seven-container .test1 div:nth-child(2) {
  background-color: #1ffe27;
  animation: turn 1s linear 0.2s infinite;
}
.seven-container .test1 div:nth-child(3) {
  background-color: #fd1a20;
  animation: turn 1s linear 0s infinite;
}
@keyframes turn {
  to {
    transform: rotate(360deg);
  }
}
.seven-container .test2 {
  width: 200px;
  height: 200px;
  position: relative;
}
.seven-container .test2 div {
  transform: rotate(1030deg) translate(0, 20px);
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 1px solid #fff;
  background: rgb(0, 0, 0);
}
.seven-container .test3 {
  overflow: hidden;
  background-color: #fff;
  padding-top: 50px;
  position: relative;
}
.seven-container .test3 p {
  text-align: center;
  font-size: 40px;
  font-weight: 800;
  color: #000;
  margin: 0;
}
.seven-container .test3 p::before, .seven-container .test3 p::after {
  width: 1300px;
  height: 1300px;
  content: "";
  position: absolute;
  border-radius: 45% 48% 43% 47%;
  background: rgba(3, 169, 244, 0.85);
  animation: rotate 10s infinite linear;
  z-index: 1;
  mix-blend-mode: lighten;
  left: 50%;
  top: -530%;
}
.seven-container .test3 p::after {
  border-radius: 43% 47% 44% 48%;
  animation: rotate 10s infinite 0.5s linear;
}
.seven-container #g-pointer-1,
.seven-container #g-pointer-2 {
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  background: #999;
  border-radius: 50%;
  background-color: #4caf50;
  mix-blend-mode: exclusion;
  pointer-events: none;
}
.seven-container #g-pointer-2 {
  width: 42px;
  height: 42px;
  background: #fff;
  transition: 0.15s ease-out;
}
.seven-container .test4 {
  background: #eee;
  padding: 30px 0;
  display: flex;
}
.seven-container .test4 > div {
  position: relative;
  width: 400px;
  background: #42b983;
  color: #fff;
  border: 3px solid #333;
  border-radius: 5px;
  margin: auto;
}
@keyframes rotate {
  0% {
    transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

@property --angle {
  syntax: "<angle>";
  inherits: false;
  initial-value: 199deg;
}
@property --angle2 {
  syntax: "<angle>";
  inherits: false;
  initial-value: 71deg;
}
.eight-container {
  background-color: #000;
  padding: 30px;
}
.eight-container > div:first-child {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.eight-container .one {
  --colorA: #fff;
  width: 200px;
  height: 200px;
  border-top: 5px solid #fff;
  border-radius: 50%;
  transform: rotate(-15deg);
  /**
    box-shadow 属性在元素的整个框后面创建一个矩形阴影, 
    drop-shadow() 过滤器则是创建一个符合图像本身形状(alpha 通道)的阴影。
  */
  filter: drop-shadow(0 0 2px var(--colorA)) drop-shadow(0 0 5px var(--colorA)) drop-shadow(0 0 10px var(--colorA)) drop-shadow(0 0 20px var(--colorA));
}
.eight-container .two {
  height: 600px;
  position: absolute;
  left: 8px;
}
.eight-container .two svg {
  position: absolute;
  top: 100px;
  width: 600px;
  height: 375px;
}
.eight-container .two .line {
  --colorA: #f24983;
  fill: none;
  stroke-width: 10;
  stroke-linejoin: round;
  stroke-linecap: round;
  stroke: #fff;
  stroke-dasharray: 328 600;
  animation: rotate 2s infinite linear;
  filter: drop-shadow(0 0 2px var(--colorA)) drop-shadow(0 0 5px var(--colorA)) drop-shadow(0 0 10px var(--colorA)) drop-shadow(0 0 15px var(--colorA)) drop-shadow(0 0 25px var(--colorA));
}
.eight-container .two .line2 {
  --colorA: #37c1ff;
  animation: rotate 2s infinite -1s linear;
}
.eight-container .three {
  display: flex;
  justify-content: center;
  gap: 30px;
}
.eight-container .three > div:first-child {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 2px solid transparent;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  animation: rotate2 3s infinite linear;
}
.eight-container .three > div:nth-child(2) {
  position: relative;
  width: 200px;
  height: 200px;
}
.eight-container .three > div:nth-child(2)::before, .eight-container .three > div:nth-child(2)::after {
  position: absolute;
  content: "";
  border-radius: 50%;
}
.eight-container .three > div:nth-child(2)::before {
  inset: 0;
  border: 3px solid transparent;
  border-top: 3px solid #fff;
  border-left: 3px solid #fff;
  animation: rotate2 3s infinite ease-out;
}
.eight-container .three > div:nth-child(2)::after {
  inset: -2px;
  border: 7px solid transparent;
  border-bottom: 7px solid #000;
  border-right: 7px solid #000;
  animation: rotate2 4s infinite ease-in-out;
}
.eight-container .four {
  width: 410px;
  background-color: #fff;
  padding: 0 5px;
}
.eight-container .four line {
  stroke-width: 5;
  stroke: #ff7700;
}
.eight-container .four .svg-border-animation {
  position: relative;
  width: 320px;
  height: 60px;
}
.eight-container .four .svg-border-animation:hover .hover-text {
  transition: 0.5s;
  color: #3f51b5;
}
.eight-container .four .svg-border-animation:hover .shape {
  animation: draw 0.5s linear forwards;
}
.eight-container .four .hover-text {
  position: absolute;
  line-height: 60px;
  width: 320px;
  top: 0;
  color: #333;
  font-size: 28px;
  text-align: center;
  cursor: pointer;
}
.eight-container .four .shape {
  fill: transparent;
  stroke-width: 4px;
  stroke: #333;
  stroke-dasharray: 160 520;
  stroke-dashoffset: -460;
}
.eight-container .four .circle-load-svg {
  stroke-dasharray: 0 570;
  animation: rot 5s linear infinite;
}
.eight-container .four svg.cccc {
  width: 250px;
  height: 50px;
  margin-bottom: 20px;
}
.eight-container .four svg.cccc .rect {
  width: 100%;
  height: 100%;
  stroke: #673ab7;
  stroke-width: 2;
  fill: transparent;
}
.eight-container .four svg.cccc .rect1 {
  stroke-dasharray: 10 20 30 40 50 60;
  stroke-dashoffset: 0;
}
.eight-container .four svg.cccc .rect2 {
  stroke-dasharray: 10 20 30 40 50 60;
  stroke-dashoffset: 20px;
}
.eight-container .four svg.cccc .rect3 {
  stroke-dasharray: 10 20 30 40 50 60;
  stroke-dashoffset: 40px;
}
.eight-container .five {
  position: relative;
  width: 240px;
  height: 100px;
  --color: orange;
}
.eight-container .five .g-dashed-line {
  --offset: 0;
  --offsetEnd: -320;
  stroke: #fc0;
  stroke-dasharray: 40, 320;
  stroke-dashoffset: 0;
  animation: fivemove 2.4s linear infinite;
}
.eight-container .five .g-shadow {
  --offset: -30;
  --offsetEnd: -350;
  stroke-dasharray: 10, 320;
  stroke-dashoffset: var(--offset);
  animation: fivemove 2.4s infinite linear;
  filter: drop-shadow(0 0 5px #ff3d00);
  stroke: var(--color);
}
.eight-container .six {
  transform: translateX(100px);
}
.eight-container .six div {
  position: relative;
  width: 120px;
  height: 120px;
  overflow: hidden;
  background: #ddd;
  -webkit-mask: linear-gradient(#000, #000 3px, transparent 3px, transparent calc(100% - 3px), #000 calc(100% - 3px), #000), linear-gradient(90deg, #000, #000 3px, transparent 3px, transparent, transparent calc(100% - 3px), #000 calc(100% - 3px), #000);
          mask: linear-gradient(#000, #000 3px, transparent 3px, transparent calc(100% - 3px), #000 calc(100% - 3px), #000), linear-gradient(90deg, #000, #000 3px, transparent 3px, transparent, transparent calc(100% - 3px), #000 calc(100% - 3px), #000);
}
.eight-container .six div::after {
  content: "";
  position: absolute;
  left: -50%;
  top: -50%;
  width: 200%;
  height: 200%;
  animation: sixrotate 4s linear infinite;
  background-image: conic-gradient(#fc0, #ff5722 25%, transparent 25%, transparent);
}
.eight-container .demo {
  position: relative;
  margin: auto;
  width: 200px;
  height: 300px;
}
.eight-container .demo .g-svg {
  --color: orange;
  position: absolute;
  width: 240px;
  height: 100px;
  right: -240px;
  top: -50px;
}
.eight-container .demo .g-main {
  position: relative;
  width: 200px;
  height: 100px;
  background: red;
  z-index: 1;
}
.eight-container .demo .g-gradient {
  position: absolute;
  left: -200px;
  top: 50px;
  width: 200px;
  height: 100px;
  background: #ddd;
  -webkit-mask: linear-gradient(#000, #000 2px, transparent 2px, transparent), linear-gradient(90deg, #000, #000 2px, transparent 2px, transparent);
          mask: linear-gradient(#000, #000 2px, transparent 2px, transparent), linear-gradient(90deg, #000, #000 2px, transparent 2px, transparent);
}
.eight-container .demo .g-gradient::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: conic-gradient(from var(--angle), transparent, #fc0, #ff5722 45deg, transparent 45deg);
  animation: angleChange 2.4s infinite ease-in-out;
}
.eight-container .demo .g-mul-gradient {
  position: absolute;
  top: 100px;
  left: 60px;
  width: 200px;
  height: 100px;
}
.eight-container .demo .g-mul-gradient::before {
  content: "";
  position: absolute;
  inset: 0;
  -webkit-mask: linear-gradient(90deg, #000, #000 2px, transparent 2px, transparent), linear-gradient(360deg, #000, #000 2px, transparent 2px, transparent);
          mask: linear-gradient(90deg, #000, #000 2px, transparent 2px, transparent), linear-gradient(360deg, #000, #000 2px, transparent 2px, transparent);
  background: conic-gradient(from var(--angle2), transparent, #fc0, #ff5722 45deg, transparent 45deg), linear-gradient(#ddd, #ddd);
  animation: angleChange2 2.4s infinite ease-in-out;
}
.eight-container .demo .g-mul-gradient::after {
  content: "";
  position: absolute;
  top: 100px;
  right: 0;
  width: 2px;
  height: 50px;
  background: linear-gradient(#ff5722, #fc0), linear-gradient(#ddd, #ddd);
  background-repeat: no-repeat;
  background-size: 100% 100%, 100% 100%;
  background-position: 0 0, 0 0;
  animation: positionMove 2.4s linear infinite;
}
@keyframes angleChange {
  0% {
    --angle: 199deg;
  }
  100% {
    --angle: 420deg;
  }
}
@keyframes angleChange2 {
  0% {
    --angle2: 71deg;
  }
  100% {
    --angle2: 297deg;
  }
}
@keyframes positionMove {
  0% {
    background-size: 100% 100%, 100% 100%;
  }
  10%, 100% {
    background-size: 100% 0, 100% 100%;
  }
}

@keyframes rotate {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 928;
  }
}
@keyframes rotate2 {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes draw {
  0% {
    stroke-dasharray: 160 520;
    stroke-dashoffset: -460;
    stroke-width: 4px;
  }
  100% {
    stroke-dasharray: 760;
    stroke-dashoffset: 0;
    stroke-width: 2px;
    stroke: #3f51b5;
  }
}
@keyframes rot {
  100% {
    stroke-dasharray: 570 570;
  }
}
@keyframes fivemove {
  0% {
    stroke-dashoffset: var(--offset);
  }
  100% {
    stroke-dashoffset: var(--offsetEnd);
  }
}
@keyframes sixrotate {
  100% {
    transform: rotate(1turn);
  }
}/*# sourceMappingURL=animation.css.map */